#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
long long n,m,lst[N],dp[N][2],w,top,ans[N],pd;
string s,t;
int main()
{
	freopen("seq.in","r",stdin);
	freopen("seq.out","w",stdout);
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>s>>t;
	n=s.size();
	m=t.size(); 
	s=' '+s;
	t=' '+t;
	for(int i=1;i<=n;++i)
	{
		if(s[i]==s[i-1])
			lst[i]=lst[i-1];
		else
			lst[i]=i;
	}
	for(int i=1;i<=n;++i)
	{
		if(s[i]!=s[i-1]) dp[i][1]=i-1,dp[i][0]=lst[i-1]-1;
		else dp[i][0]=i-1,dp[i][1]=lst[i]-1;
		if(s[i]==t[m])
			w=i;
	}
	top=m;
	ans[top]=w;
	for(int i=m;i>1;--i)
	{
		if(w<=0) break;
		if(t[i]!=t[i-1]) --top,ans[top]=dp[w][1],w=dp[w][1];
		else --top,ans[top]=dp[w][0],w=dp[w][0];
	}
	for(int i=2;i<=ans[1]-1;++i)
	{
		if(s[i]!=s[i-1])
		{
			pd=1;
			break;
		}
	}
	if(top!=1||ans[1]<=0||pd)
		cout<<"NO";
	else{
		cout<<"YES"<<'\n';
		for(int i=1;i<=m;++i)
			cout<<ans[i]<<" ";
	}
	return 0;
}
